package com.frank.dao;

import com.frank.dto.RecruitPoolDto;
import com.frank.model.JobRecord;
import com.frank.model.JobRecordCriteria;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

public interface JobRecordMapper {
    long countByExample(JobRecordCriteria example);

    int deleteByExample(JobRecordCriteria example);

    int deleteByPrimaryKey(Integer id);

    int insert(JobRecord record);

    int insertSelective(JobRecord record);

    List<JobRecord> selectByExampleWithRowbounds(JobRecordCriteria example, RowBounds rowBounds);

    List<JobRecord> selectByExample(JobRecordCriteria example);

    JobRecord selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") JobRecord record, @Param("example") JobRecordCriteria example);

    int updateByExample(@Param("record") JobRecord record, @Param("example") JobRecordCriteria example);

    int updateByPrimaryKeySelective(JobRecord record);

    int updateByPrimaryKey(JobRecord record);

    List<Map> selectResumeByRecruitType(Map map, RowBounds rowBounds);

    int selectResumeCountByRecruitType(String recruitType);

    List<Map> selectJobRecordListByUserId(Integer userId);
}